Sdílet prostřednictvím


System.Collections.ObjectModel.KeyedCollection<TKey,TItem>. Metoda ChangeItemKey

Tento článek obsahuje doplňující poznámky k referenční dokumentaci pro toto rozhraní API.

Metoda ChangeItemKey(TItem, TKey) neupravuje klíč vložený itemdo ; jednoduše nahradí klíč uložený ve vyhledávacím slovníku. Proto pokud newKey se liší od klíče, který je vložen v item, nelze získat přístup item pomocí klíče vráceného GetKeyForItem.

Tato metoda nedělá nic, pokud KeyedCollection<TKey,TItem> nemá vyhledávací slovník.

Každý klíč v klíči KeyedCollection<TKey,TItem> musí být jedinečný. Klíč nemůže být null.

Tato metoda je operace O(1).

Poznámky pro implementátory

Před úpravou klíče vloženého do položky je nutné zavolat tuto metodu, chcete-li aktualizovat klíč ve vyhledávacím slovníku. Pokud je prahová hodnota vytvoření slovníku -1, volání této metody není nutné.

Nezpřístupňujte metodu ChangeItemKey jako veřejnou metodu odvozené třídy. Zneužití této metody nesynchronizuje vyhledávací slovník s klíči položek. Například nastavení klíče na null jinou hodnotu přidá do vyhledávacího slovníku více klíčů pro položku. Zpřístupnit tuto metodu interně tak, aby umožňovala měnitelné klíče položek: Když se klíč položky změní, tato metoda se použije ke změně klíče ve vyhledávacím slovníku.